package com.mjk.common.tools.encrypt;


import com.mjk.common.tools.logger.BizLogger;

import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Sha1Util {

	private Sha1Util(){}

	public static String getSha1(String str) {
		if ((null == str) || (str.isEmpty())) {
			return null;
		}
		char[] hexDigits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
				'a', 'b', 'c', 'd', 'e', 'f' };
		try {
			MessageDigest mdTemp = MessageDigest.getInstance("SHA1");
			mdTemp.update(str.getBytes(StandardCharsets.UTF_8));

			byte[] md = mdTemp.digest();
			int j = md.length;
			char[] buf = new char[j * 2];
			int k = 0;
            for (byte byte0 : md) {
                buf[(k++)] = hexDigits[(byte0 >>> 4 & 0xF)];
                buf[(k++)] = hexDigits[(byte0 & 0xF)];
            }
			return new String(buf);
		} catch (NoSuchAlgorithmException e) {
			BizLogger.error(e);
		}
		return "";
	}
}